/**
    ATClab - scriptable Air Traffic Control simulations.
    Copyright (C) 2010 openatclab@gmail.com

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
**/

#ifndef __ATC_SECTORSPRITE_HDR__
#define __ATC_SECTORSPRITE_HDR__


#include <q3canvas.h>
#include "canvas_types.h"
#include <stdexcept>


namespace atc{


	//
	// atc::sectorsprite_error
	//
	struct sectorsprite_error : public std::runtime_error{
		sectorsprite_error(const std::string& msg) 
			:std::runtime_error(msg)
		{}
	};


	//
	// atc::SectorSprite
	//
	class SectorSprite : public Q3CanvasPolygon {

	public: 
		SectorSprite( Q3Canvas * );
		~SectorSprite();

	public: // [virtual]
		int rtti()const { return CanvasItem::RTTI_SECTOR; }

	private:

	};

	
	//
	// atc::ActiveSectorSprite
	//
	class ActiveSectorSprite : public SectorSprite {

	public: 
		ActiveSectorSprite( Q3Canvas * );
		~ActiveSectorSprite();

	};

};

#endif
